home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / FROMUTS / LARGER / !Larger / !Help < prev    next >
Text File  |  1992-01-23  |  18KB  |  452 lines

  1. !Larger         Version 1.27    23rd January 1992
  2. =================================================
  3.  
  4. (c) 1991 Robin Watts
  5.  
  6. Introduction:
  7.  
  8. !Larger  is a RISC OS Application designed to make life easier when using the
  9. Desktop. It performs several functions at once:
  10.  
  11. 1) It  provides  a  Sticky  Backdrop  facility,  allowing applications, Basic
  12. programs  and  datafiles  to  be  run,  dragged from, or moved by clicking or
  13. dragging icons on the backdrop.
  14.  
  15. Features include:
  16.  
  17.       * Sprites, and System Variables saved with Backdrop.
  18.       * Dragging  files  onto  backdrop  allows  them  to  be  saved  into  a
  19.         directory within !Larger.
  20.       * Shift-Drag conventions supported.
  21.       * Automatic Gridlocking.
  22.       * Facility to Select directories as CSD when opened from backdrop.
  23.       * Press Ctrl-Tab to select Directory under Pointer as CSD,  or  to  set
  24.         CSD to parent directory of file in editor under pointer.
  25.       * Unique 'Gravity' feature separates Applications  and  Directories  as
  26.         specified by user.
  27.       * Launch Applications by dragging files onto them.
  28.       * Save into directories by dragging files onto them.
  29.       * Launch Applications by User-Definable Ctrl Keys.
  30.       * !Help Compatible.
  31.       * Copy Applications, Files and directories, by dragging from  Backdrop.
  32.  
  33. 2) It  provides  a  Virtual  Desktop  facility,  enabling a desktop of almost
  34. infinite size to be used, simply by 'pushing' the edge of the screen with the
  35. pointer.  This  has  uses when using many different applications at once, and
  36. helps prevent cluttering of Screen displays.
  37.  
  38. 3) An Application Manager is provided. On Command,  an  entire  application's
  39. windows  can  be hidden from view off screen, and brought  back  at  a  later
  40. date unchanged. This is intended to help reduce screen clutter.
  41.  
  42. 4) A facility is availiable to save details of the applications running,  and
  43. the positions of the windows belonging to these. These can then  be  reloaded
  44. simply by double clicking on and icon.
  45.  
  46. Menu Options:
  47. =============
  48.  
  49. Info        =>             Opens a window containing info on Larger.
  50.  
  51. Backdrop    => Drag Onto   This  allows  the  item  over  which  the menu was
  52.                            opened to have its 'Drag Onto' flag toggled.
  53.             => Open Parent This  opens the directory containing the icon over
  54.                            which the menu was opened.
  55.             => Ctrl Key    This allows you to set a Key so that Ctrl and that
  56.                            Key will 'run' that item.
  57.             => Pre Params  This accepts parameters  which  will  be  inserted
  58.                            after the command to be executed, and  before  the
  59.                            filename of the file dragged onto the  icon.  Thus
  60.                            if 'tar' is sat on the back drop, and  a  file  is
  61.                            dragged onto  it,  and  the  required  command  is
  62.                            'tar -xvf  <Filename>',  then  the  pre  paramater
  63.                            string should be set to -xvf. This option is  only
  64.                            used if a file is dragged to  the  icon,  and  the
  65.                            drag onto flag is set.
  66.             => Post Params This performs the same operation  as  Pre  Params,
  67.                            but inserts the  parameters  after  the  filename.
  68.                            The same conditions of use apply.
  69.             => Run With    This option allows the user to run an  application
  70.                            with  a  specific  string  passed   to   it.   The
  71.                            application will be invoked with a command  string
  72.                            consisting of:
  73.                            <Command> <Pre params> <Run With> <Post Params>
  74.                            This enables applications to be run with  (say)  a
  75.                            list of filenames.
  76.             => Remove Item This removes the item from the backdrop.
  77.             => Help        This activates the  Help  file  (if  any)  of  the
  78.                            application.
  79.              
  80. Desktop     => Home        This   moves  the  desktop  back  to  its  initial
  81.                            position.
  82.             => Retrieve    This  pulls  all  (non-hidden)  windows  onto  the
  83.                            screen.
  84.             => Cycle       This pulls the back window to the front.
  85.  
  86. Save Room   =>             This saves details of all non-hidden  Applications
  87.                            and their windows to an icon on  the  backdrop.  A
  88.                            double click on the icon will reload the apps, and
  89.                            try and re-open the windows in the same places  as
  90.                            before. Larger also saves the titles of the  files
  91.                            (read from the title bar of the windows), and will
  92.                            reload these into the appropriate  windows  if  it
  93.                            can.
  94.             
  95. Config...                  This Opens the configuration window. This can also
  96.                            be achieved by clicking on the icon bar  icon  (if
  97.                            selected)
  98.  
  99. Apps...                    This allows the user to  edit  !Larger's  internal
  100.                            list of Applications  and  their  positions.  This
  101.                            list is used  when  restarting  applications  from
  102.                            previously saved rooms.
  103.  
  104. Quit                       This quits !Larger.
  105.  
  106. Hot Key Options:
  107. ================
  108.  
  109. Ctrl-Tab:     Pressing  Ctrl-Tab  over  a  directory  window,  sets  the  CSD
  110.               (currently selected  directory)  to  this  directory.  Pressing
  111.               Ctrl-Tab, over an application which carries  the  name  of  the
  112.               file being edited in it's title bar, will set the CSD to be the
  113.               directory containing this file.
  114.  
  115. Shift-Tab:    Pressing Shift-Tab over a window, will  hide  all  the  windows
  116.               belonging to that application off screen, and put  an  icon  on
  117.               the backdrop. Double clicking this  Icon  will  cause  all  the
  118.               windows to reappear, in the same positions as before.
  119.  
  120.  
  121. Configuration Window:
  122. =====================
  123.  
  124. This allows fine tuning of the !Larger Application for individual users.  The
  125. possible options are listed below:
  126.  
  127. Auto Load     If selected !Larger will automatically load a pre-saved
  128.               backdrop from disk when launched.
  129. Organise      This option turns the sorting functions of the program on or
  130.               off. With this enabled, applications (i.e. All non-directory
  131.               objects) and directories, are subjected to the 'gravity' set
  132.               below. Thus with application gravity right, and directory 
  133.               gravity left and organise on, objects on the backdrop will be
  134.               neatly separated into the two categories.
  135. Icon+Text     This option causes applications on the backdrop to be show as
  136.               their sprite, followed by their name.
  137. Icon Only     This option causes applications on the backdrop to be show as
  138.               their sprite alone, without their name.
  139. Scroll        This option turns the Virtual Desktop facility on and off. With
  140.               this option set, as the pointer travels beyond the confines  of
  141.               the screen, it causes the entire screen to move in the opposite
  142.               direction, so offering a practically infinite screen area.
  143. With Shift    This option works in conjunction with 'Scroll' above. With this
  144.               set, the screen will only scroll around the Virtual Desktop, if
  145.               Shift is held while the pointer is moved off screen.
  146. Open Filer    With this option set,  double-clicking  a  directory  from  the
  147.               backdrop has the effect of opening the filer window on screen.
  148. Set CSD       With this  option  set,  double-clicking  a  directory  on  the
  149.               backdrop has the effect of making  it  the  currently  selected
  150.               directory.
  151. Icon On Bar   This toggles the icon bar icon, on and off.
  152. Large Icon    This selects what size of icon will be displayed  on  the  icon
  153.               bar, if it is enabled with 'Icon On Bar'
  154. Window Size   If selected, this stops windows opening up  to  vast  sizes  by
  155.         Limit limiting the size of windows to that of screen size.
  156. No Bounds     For those die-hard users amoung you, who object to all  windows
  157.               having the 'No Bounds' bit set. To  use  the  Virtual  Desktop,
  158.               this must be set. Note that this only affects  windows  created
  159.               after the setting has been changed - Not all existing windows.
  160. Selective     If this option is selected, only sprites used in  the  backdrop
  161.   Sprite Save itself are saved. This means that !Larger will  start  up  much
  162.               faster, and will take less room to store the sprites.  However,
  163.               more time will be taken to open  directory  viewers  containing
  164.               'unseen' applications as their sprites must be loaded. This  is
  165.               slow at present as the code to copy sprites to a new area  uses
  166.               repeated SWI calls, and is hence slow. Also, enough  memory  in
  167.               the RMA must be availiable to hold the sprites  used,  as  they
  168.               are copied across just prior to saving. If  not,  an  error  is
  169.               given.
  170. Follow Caret  If this option is selected, and the user moves  the  caret  off
  171.               screen, then the whole desktop will scroll to bring  the  caret
  172.               back onto the screen. This  enables  windows  larger  than  the
  173.               screen to be opened (e.g. DTP windows),  and  scrolled  around,
  174.               without worrying about losing sight of the caret.  This  option
  175.               will cause problems if the user  trys  to  scroll  the  desktop
  176.               manually, so as to take the Caret off screen,  as  the  machine
  177.               promptly scrolls it back.
  178.  
  179. To Copy !Larger:
  180. ================
  181.  
  182. 1) Load up !Larger
  183. 2) Turn off Auto-Load
  184. 3) Quit !Larger
  185. 4) Drag !Larger to new disc
  186. 5) Reload Original !Larger
  187. 6) Turn Auto-Load back on (if appropriate)
  188.  
  189. In fact, any files that are saved, by dragging onto the backdrop of  !Larger,
  190. are saved within !Larger in a directory called Internal. These can be deleted
  191. if not required. Similarily, saved rooms  are  kept  in  a  directory  called
  192. rooms. These can be deleted. Also the files making up a saved backdrop can be
  193. deleted if not required. Simply delete the  files  'Details',  'SysVars'  and
  194. 'Sprites'  (NOT !Sprites).
  195.  
  196. Public Domain Notice:
  197. =====================
  198.  
  199. This software is Shareware and may be freely copied, as long as the following
  200. conditions are met:
  201.  
  202. a) This Notice is distributed unchanged with every copy
  203. b) Any  Changes  released  should first be Mailed to the Author at one of the
  204.    addresses given below
  205. c) No  charge  (excluding  possibly a minimal Copying charge) is made for the
  206.    software by the distributor.
  207. d) You may use the software for a suitable trial period without  registering.
  208.    Should you continue to do so after this period,  then  you  must  register
  209.    with the author by sending £10.00 to the author. In exchange for this, you
  210.    will receive free updates to the software as it becomes available. DO  NOT
  211.    ABUSE THIS SYSTEM!
  212.  
  213. This software is provided 'as is', with no guarantee of its  suitability  for
  214. any purpose. I will accept no responsibility for any data  lost  while  using
  215. this program. NO WARRANTY IS GIVEN!
  216.  
  217. If  you  do change the code at all, please let me know, as I refuse to try to
  218. support  other  peoples modifications unless I have been told about them, and
  219. I will probably be interested.
  220.  
  221. If anyone has any ideas on improvements or new features for !Larger,  however
  222. strange they may seem, please get in touch  with  me,  as  they  will  almost
  223. always be useful to someone else. I will try and implement  anything  (within
  224. reason) that people want.
  225.  
  226. Things to note:
  227. ===============
  228.  
  229. 1) If  a  file  is set to 'Drag onto', and an application 'saves' a file onto
  230.    its  plinth,  the  data  passed  is  stored  in  the  file  pointed  to by
  231.    Wimp$Scrap. Then the application is loaded, and Wimp$Scrap is passed to it
  232.    as  a  paramater. The application should then delete Wimp$Scrap. This does
  233.    not  seem  to  be supported by any applications I have tried. (Or I am not
  234.    doing it right!).
  235.  
  236. 2) When  loading !Larger for the second time in a session, it may take a long
  237.    time  to  start  up. This is due to the way *IconSprites works, and may be
  238.    changed in later versions. To reduce  this  problem,  use  the  'Selective
  239.    Sprite Save' option, and only the minimum number of sprites required  will
  240.    be saved. Without this option set !Larger  saves  all  the sprites it  has
  241.    seen, and so, ends up with an very large  sprite  file.   (Mine  is  about
  242.    200k).
  243.  
  244. 3) Problems  with  !Fonts:  There  are programs availiable now that patch the
  245.    Font Manager to allow fast access to Large numbers of fonts. Some of these
  246.    programs  have  fixes in to stop crashing Edit. If one of these is run and
  247.    the  backdrop  is saved, problems may occur when rerun as System variables
  248.    will  already  be set up, and Edit may crash. Not much I can do here until
  249.    Acorn release a decent version of !Edit.
  250.  
  251. 4) When the backdrop is saved, all the system variables (except those  to  do
  252.    with !Larger itself, date and time) are saved. If this is a problem,  then
  253.    simply edit the Obey file in !Larger called 'SysVars' after  the  save  to
  254.    remove the offending lines.
  255.                          
  256. 5) Some  programs (notably !BEdit) cannot be run with an argument. This means
  257.    that they do not respond properly if set 'Drag onto'.            
  258.                                
  259. 6) If the Toggle Size icon in an Edit window is hit, while  editing  a  large
  260.    file, Edit may report a 'fatal store error' and crash. This is because  of
  261.    the way Edit tries to open a window as large as possible, and is not a bug
  262.    with !Larger. Hopefully Acorn will fix this in future versions  of  !Edit.
  263.    This error will no longer be given if you have 'Window Size Limit' set.
  264.  
  265. 7) I'm not getting paid for this.
  266.  
  267. Possible Future Enchancements:
  268. ==============================
  269.  
  270. 1) Add option to show position of windows on icon bar icon.
  271.  
  272. 2) Add facility for fixed (non-moving) windows.
  273.  
  274. 3) Selective Sprite Save may be sped up considerably,  by  bypassing  the  OS
  275.    sprite calls, and copying directly between sprite areas. This method would
  276.    reply only on information given in the PRM, so it ought still to be legal.
  277.    
  278. 4) Someone Might Pay me
  279.  
  280. Changes History:
  281. ================
  282.  
  283. Changes for 1.05:
  284.  
  285. Fixed bug in (shift-)drag from filer.
  286. Improved !Help response.
  287. Fixed Bug in window scrolling.
  288.  
  289. Changes for 1.06:
  290.  
  291. Improved redraw speed.
  292. Added Pre and Post Params Options.
  293. Added Run With option.
  294.  
  295. Changes for 1.07:
  296.  
  297. Fixed Redraw Bug for Blank Backdrop.
  298. Added Icon On/Off Option.
  299. Added Large/Small Icon Option.
  300. Increased WimpSlot to 128K
  301.  
  302. Changes for 1.08:
  303.  
  304. Added Config window code, and removed large chunks of menu options.
  305. (This halved the time taken to generate the menu :-) )
  306. Fixed bug with moving !Larger windows.
  307.  
  308. Changes for 1.09:
  309.  
  310. Corrected Mode change bug introduced in V1.08.
  311. Put in Window Size Limit Option.
  312. Streamlined Internals of proggy, so WimpSlot reduced to 96k.
  313.  
  314. Changes for 1.10:
  315.  
  316. Put in No Bounds Option.
  317. Corrected Saving of icon size option.
  318. Put Key Shortcuts in config window.
  319. Corrected Bug with Quitting multiple instantiations of !Larger.
  320.  
  321. Changes for 1.11:
  322.  
  323. Added facility to allow drag to filer from backdrop to copy.
  324.  
  325. Changes for 1.12:
  326.  
  327. Sped up redraw.
  328. Added selected sprite save option.
  329.  
  330. Changes for 1.13:
  331.  
  332. Corrected problem with menu generation.
  333.  
  334. Changes for 1.14:
  335.  
  336. Corrected Grabkeys Bug.
  337. Added Rooms Option. (Involved Increasing WimpSlot to 128K :-( )
  338. Put Setup Segment of program as an Overlay - Dumped after Start.
  339. Removed all line number references from within program.
  340. Altered some DIMs to claim space from RMA.
  341. Fixed bug in redraw routine.
  342. Added Follow Caret Option.
  343.  
  344. Changes for 1.15:
  345.  
  346. Sped up Selective Sprite Save - See note above.
  347. Put Save/Load into an Overlay, and various Menu Options into another of  same
  348. size, so as to save memory.
  349.  
  350. Changes for 1.16:
  351.  
  352. Fixed bug in System Variable Saving Routine.
  353. Fixed bug in Selective Sprite Save.
  354.  
  355. Changes for 1.17:
  356.  
  357. Fixed bug with discard in Application Window.
  358.  
  359. Changes for 1.18:
  360.  
  361. Tidied bug fix for discard.
  362. Extended Ctrl-Tab Functionality.
  363. Fixed bug with No organise, no gravity.
  364. Fixed bug with Details Save.
  365.  
  366. Changes for 1.19:
  367.  
  368. Fixed CSD Root problem.
  369. Fixed backdrop to backdrop, non-organise drag bug.
  370.  
  371. Changes for 1.20:
  372.  
  373. Updated Room Save Option, to save titles of files in windows.
  374.  
  375. Changes for 1.21:
  376.  
  377. Updated Room Save Option, to cope with filer windows.
  378.  
  379. Changes for 1.22:
  380.  
  381. Rewrote menu handling routines to give instant menu creation.
  382. Changed functionality of application manager.
  383. Improved redraw on internal swaps.
  384.  
  385. Chnages for 1.23:
  386.  
  387. Fixed (Major) bug in Load/Save Room.
  388. Fixed bug in Redraw Routine.
  389. Added Help menu option.
  390.  
  391. Changes for 1.24:
  392.  
  393. Fixed Bug in Saving SysVars.
  394. Fixed problem with Caret in Follow Caret/Hide App.
  395. Fixed Quit Error.
  396. Fixed Iconising IconBar Bug.
  397. Fixed Load Room Bug.
  398. Fixed active apps list bug.
  399.  
  400. Changes for 1.25:
  401.  
  402. Improved Scroll with Shift mouse rectangle handling.
  403.  
  404. Changes for 1.26:
  405.  
  406. Fixed run from backdrop bug.
  407. Fixed Sysvars Saving (Again!)
  408. Fixed bug with FS Vars.
  409.  
  410. Changes for 1.27:
  411.  
  412. Fixed bug with follow caret, and non-displayed caret.
  413. Fixed config window click detection bug.
  414.                                                                              
  415. Addresses To Contact the Author:
  416. ================================
  417.  
  418. 217 Waterhouse Moor,
  419. Harlow,
  420. Essex,
  421. CM18 6BW
  422.  
  423. St Catherines College,
  424. Manor Road,
  425. Oxford,
  426. OX1 3UJ
  427.  
  428. By Janet: m90rjw@uk.ac.oxford.ecs
  429.  
  430. Thanks Go to:
  431. =============
  432.  
  433. Brian  Brunswick  for  writing  the  original Module to Patch the wimp so all
  434. windows are not bounded. His addresses are as follows:
  435.  
  436. Brian.Brunswick@cl.cam.ac.uk
  437.  
  438. Trinity College
  439. Cambridge
  440. CB2 1TQ
  441. UK
  442.  
  443. All my many bugtesters (far too many to name individually).
  444.  
  445. Rik van der Schalie for writing to me with original code for Selective Sprite
  446. Saving, and other ideas. His address is as follows:
  447.  
  448. Abrikozenstraat 190
  449. 2564 VZ DEN HAAG
  450. Netherlands
  451. Tel: 070-3258675
  452.